home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
C/C++ Users Group Library 1996 July
/
C-C++ Users Group Library July 1996.iso
/
vol_100
/
196_01
/
bit78031.for
< prev
next >
Wrap
Text File
|
1985-11-13
|
4KB
|
100 lines
C [BIT78031.FOR of JUGPDS Vol.19]
Ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
C c
C An awarded program of a contest (Japan Student Association of Computers) c
C by kihira shuu? c
C c
C transerred from BIT 1978-04(Vol.10,No.4), p86-87 c
C by Toshiya Ohta & Studio Gala, June 11, 1985 c
C c
C c
Ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
C
dimension m(4),a(4),m1(24),m2(24),m3(24),m4(24)
data a/1h+,1h*,1h-,1h//
m(1) = 1
m(2) = 2
m(3) = 6
m(4) = 9
n = 0
do 10 i=1,4
do 10 j=1,4
do 10 k=1,4
do 10 l=1,4
if ((i-j)*(i-k)*(i-l)*(j-k)*(j-l)*(k-l)) 15,10,15
15 n = n+1
m1(n) = m(i)
m2(n) = m(j)
m3(n) = m(k)
m4(n) = m(l)
10 continue
do 20 n=1,24
do 30 i=1,4
if (i-2) 301,301,302
301 if (m1(n)-m2(n)) 302,30,30
302 call sub(i,mm,m1(n),m2(n),isw)
if (isw) 30,303,30
303 do 35 j=1,4
if (i-j) 353,351,353
351 if (i-2) 352,352,353
352 if (m2(n)-m3(n)) 353,35,35
353 call sub(j,nn,mm,m3(n),isw)
if (isw) 35,355,35
355 do 135 k=1,4
if (j-k) 358,356,358
356 if (j-2) 357,357,358
357 if (m3(n)-m4(n)) 358,135,135
358 call sub(k,kk,nn,m4(n),isw)
if (isw) 135,359,135
359 if ((kk-70)*(kk-90)) 360,360,135
360 write(1,600) kk,m1(n),a(i),m2(n),a(j),m3(n),
+ a(k),m4(n)
600 format(1h ,i2,3h=((,i2,a1,i2,1h),a1,i2,1h),
+ a1,i2)
135 continue
35 continue
do 40 k=i,4
if (i-k) 403,401,403
401 if (i-2) 402,402,403
402 if (m1(n)-m3(n)) 403,40,40
403 if (k-2) 404,404,405
404 if (m3(n)-m4(n)) 405,40,40
405 call sub(k,nn,m3(n),m4(n),isw)
if (isw) 40,410,40
410 do 140 j=1,4
if (i-j) 412,411,412
411 if (i-2) 140,140,412
412 if (j-k) 414,413,414
413 if (j-2) 140,140,414
414 call sub(j,kk,mm,nn,isw)
if (isw) 140,415,140
415 if ((kk-70)*(kk-90)) 416,416,140
416 write(1,610) kk,m1(n),a(i),m2(n),a(j),m3(n),
+ a(k),m4(n)
610 format(1h ,i2,2h=(,i2,a1,i2,1h),a1,1h(,i2,
+ a1,i2,1h))
140 continue
40 continue
30 continue
20 continue
stop
end
C
C
subroutine sub(ii,mc,ma,mb,isw)
isw = 0
goto (1,2,3,4), ii
1 mc = ma+mb
goto 7
2 mc = ma*mb
goto 7
3 mc = ma-mb
goto 7
4 if (ma-ma/mb*mb) 5,6,5
5 isw = 1
goto 7
6 mc = ma/mb
7 return
end